package com.createidea.scrumfriend.dao.product;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Restrictions;

import com.createidea.scrumfriend.dao.BaseDaoImpl;
import com.createidea.scrumfriend.to.AttachmentTo;
import com.createidea.scrumfriend.to.ProductTo;
import com.createidea.scrumfriend.utils.Pager;

public class ProductDaoImpl extends BaseDaoImpl  {

//	@Override
//	public List<ProductTo> getAllEnableProducts(int i) {
//		// TODO Auto-generated method stub
//		DetachedCriteria detachedCriteria=DetachedCriteria.forClass(ProductTo.class);
//		detachedCriteria.add(Restrictions.eq("status", i ));
//		detachedCriteria.addOrder(Order.desc("general_price"));
//		return this.getHibernateTemplate().findByCriteria(detachedCriteria);
//	}
//	
//	@Override
//	public List<ProductTo> getProductsByCount(int i, int status) {
//		DetachedCriteria detachedCriteria = DetachedCriteria.forClass(ProductTo.class);
//		detachedCriteria.add(Restrictions.eq("status", status ));
//		detachedCriteria.addOrder(Order.desc("general_price"));
//		if(i==0)
//			return	this.getHibernateTemplate().findByCriteria(detachedCriteria);
//		else
//			return this.getHibernateTemplate().findByCriteria(detachedCriteria, 0,i);
//	}
//
//	@Override
//	public List<ProductTo> getAllEnableProductsByPager(Pager pager, int i) {
//		// TODO Auto-generated method stub
//		DetachedCriteria detachedCriteria=DetachedCriteria.forClass(ProductTo.class);
//		detachedCriteria.add(Restrictions.eq("status", i ));
//		detachedCriteria.addOrder(Order.desc("updatedTime"));
//		return this.findResultForPager(detachedCriteria, pager);
//	}
//
//	@Override
//	public void saveProcut(ProductTo product) {
//		// TODO Auto-generated method stub
//		this.getHibernateTemplate().saveOrUpdate(product);
//	}
//
//	@Override
//	public ProductTo getProcut(String productId) {
//		// TODO Auto-generated method stub
//		DetachedCriteria detachedCriteria=DetachedCriteria.forClass(ProductTo.class);
//		detachedCriteria.add(Restrictions.eq("id", productId ));		
//		List <ProductTo> list= this.getHibernateTemplate().findByCriteria(detachedCriteria);
//		if(list!=null&&list.size()>0)
//			return list.get(0);
//		else
//			return null;
//	}
//
//	@Override
//	public void savePicture(PictureTo picture) {
//		// TODO Auto-generated method stub
//		this.getHibernateTemplate().saveOrUpdate(picture);
//	}
//
//	@Override
//	public List<ProductTo> getProductsForType(int i, String producttypeId) {
//		// TODO Auto-generated method stub
//		DetachedCriteria detachedCriteria=DetachedCriteria.forClass(ProductTo.class);		 
//		detachedCriteria.createCriteria("type").add(Restrictions.eq("id", producttypeId));
//		detachedCriteria.add(Restrictions.eq("status", i ));
//		return	this.getHibernateTemplate().findByCriteria(detachedCriteria);
//	}
//
//	@Override
//	public List<ProductTo> getProductsForTypeInPager(int i,String producttypeId, Pager pager) {
//		// TODO Auto-generated method stub
//		DetachedCriteria detachedCriteria=DetachedCriteria.forClass(ProductTo.class);		 
//		
//		detachedCriteria.createCriteria("type").add(Restrictions.eq("id", producttypeId));
//		detachedCriteria.add(Restrictions.eq("status", i ));
//		return	this.findResultForPager(detachedCriteria, pager);
//	}
//	
}
